Let op: dit is een oudere versie van deze publicatie. Ga naar de laatste versie

Uitwisselprofiel IGJ Contextinformatie t.b.v. onaangekondigd inspectiebezoek

1.4.1. Wat is het aantal personeelsleden in loondienst met een zorgverlener functie en het aantal personeelsleden niet in loondienst met een zorgverlener functie per kwalificatieniveau per Dag-, Avond- en Nacht-dienst (DAN-dienst)?

Concepten

Relaties

Eigenschappen

SPARQL query

Code gekopieerd

...

Kopieer naar klembord

1# Indicator: IGJ 1.4.1
2# Parameters: ?peildatum, ?vestigingsnummer
3# Ontologie: versie 3.0.0 of nieuwer
4
5PREFIX onz-g: <http://purl.org/ozo/onz-g#>
6PREFIX onz-pers: <http://purl.org/ozo/onz-pers#>
7PREFIX onz-zorg: <http://purl.org/ozo/onz-zorg#>
8PREFIX onz-org: <http://purl.org/ozo/onz-org#>
9PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
10PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
11PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
12
13SELECT
14	?kwalificatieniveau
15	(SUM(?dag_dienst * ?pil) AS ?Aantal_PIL_met_een_zorgfunctie_in_de_dagdienst)
16	(SUM(?avond_dienst * ?pil) AS ?Aantal_PIL_met_een_zorgfunctie_in_de_avonddienst)
17	(SUM(?nacht_dienst * ?pil) AS ?Aantal_PIL_met_een_zorgfunctie_in_de_nachtdienst)
18	(SUM(?dag_dienst * ?pnil) AS ?Aantal_PNIL_met_een_zorgfunctie_in_de_dagdienst)
19	(SUM(?avond_dienst * ?pnil) AS ?Aantal_PNIL_met_een_zorgfunctie_in_de_avonddienst)
20	(SUM(?nacht_dienst * ?pnil) AS ?Aantal_PNIL_met_een_zorgfunctie_in_de_nachtdienst)
21
22{
23    {
24        SELECT DISTINCT 
25            ?medewerker
26            ?kwalificatieniveau
27            ?dag_dienst
28            ?avond_dienst
29            ?nacht_dienst
30            ?pil
31            ?pnil
32        {
33            # BIND ("2023-09-13"^^xsd:date AS ?peildatum)
34            # BIND (?vestigingsnummer AS ?vestigingsnummer)
35            VALUES ?personeels_overeenkomst 
36            { 
37                onz-pers:ArbeidsOvereenkomst
38                onz-pers:UitzendOvereenkomst
39                onz-pers:InhuurOvereenkomst
40            }
41            ?overeenkomst 
42                a ?personeels_overeenkomst ;
43                onz-pers:heeftOpdrachtnemer ?medewerker ;
44                onz-g:hasPart ?afspraak .
45            ?afspraak
46                onz-g:isAbout ?functie ;
47                onz-g:startDatum ?start_afspraak .
48            OPTIONAL {?afspraak onz-g:eindDatum ?eind_afspraak}
49            ?functie
50                a onz-pers:ZorgverlenerFunctie ;
51                onz-g:hasQuality /onz-g:hasQualityValue ?functie_niveau .
52            FILTER (?start_afspraak <= ?peildatum && (!BOUND(?eind_afspraak) || ?eind_afspraak >= ?peildatum))
53            ?functie_niveau
54                a onz-pers:ODBKwalificatieWaarde .
55            {
56                ?functie_niveau
57                    a onz-pers:ODBKwalificatieWaarde ;
58                    rdfs:label ?kwalificatieniveau .
59            } UNION {
60                BIND("Totaal" AS ?kwalificatieniveau ) 
61            }
62            
63            # Werkperiode van alle zorgverlener functies
64            ?inzet
65                a onz-pers:GewerktePeriode ;
66                onz-g:definedBy ?overeenkomst ;
67                onz-g:hasPerdurantLocation ?werk_locatie ;
68                onz-g:hasBeginTimeStamp ?start_werk ;
69            BIND(HOURS(?start_werk) AS ?start_uur)
70            ?werk_locatie onz-g:partOf* ?vestiging . # vind Vestiging die hoort bij werk_locatie
71            ?vestiging 
72                a onz-org:Vestiging ;
73                onz-g:identifiedBy ?vestigingsnummer_object .
74            ?vestigingsnummer_object
75                a onz-org:Vestigingsnummer ;
76                onz-g:hasDataValue ?vestigingsnummer . # filter vestiging op gegeven vestigingsnummer
77            
78            BIND(STRDT(SUBSTR(STR(?start_werk), 1, 10), xsd:date) AS ?start_werk_datum)
79            FILTER(?start_werk_datum = ?peildatum )
80
81            BIND(IF(?start_uur >= 7 && ?start_uur < 15, 1, 0) AS ?dag_dienst)
82            BIND(IF(?start_uur >= 15 && ?start_uur < 23, 1, 0) AS ?avond_dienst)
83            BIND(IF(?start_uur >= 23 || ?start_uur < 7, 1, 0) AS ?nacht_dienst)
84            BIND(IF (?personeels_overeenkomst = onz-pers:ArbeidsOvereenkomst, 1, 0) AS ?pil)
85            BIND(IF (?pil = 0, 1, 0) AS ?pnil)
86        }
87    }
88}
89GROUP BY ?kwalificatieniveau
90ORDER BY ?kwalificatieniveau
91

Heb je feedback?

Loopt u tegen een issue aan bij het KIK-V product? Neem dan contact met ons op!